// 导入 http 模块
import express from 'express'

// 创建服务器实例
const app = express()

app.use((request, response, next) => {
  setTimeout(() => {
    next()
  }, 400)
})

app.use(express.json())
app.use(express.urlencoded({ extended: true }))

// 出库-获取订单列表
app.post('/wms/inOrder/all', (request, response) => {
  const params = request.body
  const result = []
  for (let i = 0; i < (params.pageSize || 10); i++) {
    result.push({
      id: i + 1, // 卡牌id
      cardVideo: '',	 // 卡牌开箱视频
      orderImgId: 'YX12351231', 	// 影像id
      cardImages: params.wmsStatus === 2 ? [{ index: 0, value: '' }, { index: 1, value: '' }, { index: 2, value: '' }, { index: 3, value: '' }, { index: 4, value: '' }] : ['https://pinia.vuejs.org/logo.svg', 'https://pinia.vuejs.org/logo.svg', 'https://pinia.vuejs.org/logo.svg'], // 卡牌大合照
      trackingNo: 'SF35234124476231',	// 物流单号
      logisticsCompany: '顺丰快递', 	// 物流公司
      logisticsStatus: '快递签收成功', 	// 物流状态
      sendOutTime: '2023-01-04 10:07',	// 确认寄出时间
      signPerson: '张三',	// 签收人
      signTime: '2023-01-04 10:07',	// 签收时间

      orderNo: 'SK678123121412XS12',	// 送卡订单号
      createTime: '2023-10-10 10:10', 	// 创建时间
      orderInfos: ['DD1234125123', 'DD5743512411', 'DD6347351242'], 	// 订单列表
      actualCount: 20, 	// 实收数量

      matchResult: 1,	// 匹配结果 1:匹对成功 2：批量送卡 3-退货入库
      orderType: 1,	// 订单类型 1-送拍订单 2-寄售订单 3-寄存订单4-VIP订单5-退货入库

      firstTime: '2023-07-10 10:10', // 初审时间
      firstReviewMiss: 5,	// 初审不通过数量
      firstReviewName: '张三', 	// 初审人
      firstReviewPass: 8, 	// 初审通过数量

      reviewTime: '2023-01-04 10:07',	// 复核时间
      reviewMiss: 6, 	// 复核不通过数量
      reviewName: '张三',	// 复核人
      reviewPass: 9,	// 复核通过数量

      enterTime: '2023-01-04 10:07', // 入库时间

      sendPerson: '张三',	// 送卡人
      sendCount: 20,	// 送卡数量
      sendPhone: '13800000000',	// 送卡人电话
      sendUid: 'YQasdq11251a', 	// 送卡人uid

      wmsStatus: params.wmsStatus || 1
    })
  }
  response.send({
    code: 0,
    data: result,
    message: 'success'
  })
})

// 出库-新增订单
app.post('/wms/inOrder/add', (request, response) => {
  const params = request.body
  const times = new Date().getTime()
  const result = {
    trackingNo: params.trackingNo,
    status: times % 2 === 0 ? '已签收' : '在途'
  }
  setTimeout(() => {
    response.send({
      code: 0,
      data: result,
      message: 'success'
    })
  }, 2000)
})

// 出库-获取订单详情
app.post('/wms/inOrder/detail', (request, response) => {
  const result = {
    id: new Date().getTime(), // 卡牌id
    cardVideo: '',	 // 卡牌开箱视频
    orderImgId: 'YX12351231', 	// 影像id
    cardImages: ['https://pinia.vuejs.org/logo.svg', 'https://pinia.vuejs.org/logo.svg', 'https://pinia.vuejs.org/logo.svg'], // 卡牌大合照
    trackingNo: 'SF35234124476231',	// 物流单号
    logisticsCompany: '顺丰快递', 	// 物流公司
    logisticsStatus: '快递签收成功', 	// 物流状态
    sendOutTime: '2023-01-04 10:07',	// 确认寄出时间
    signPerson: '张三',	// 签收人
    signTime: '2023-01-04 10:07',	// 签收时间

    orderNo: 'SK678123121412XS12',	// 送卡订单号
    createTime: '2023-10-10 10:10', 	// 创建时间
    orderInfos: [	// 订单列表
      { id: 'KL124125412074', orderType: '送拍订单', checked: true },
      { id: 'QS125123123125', orderType: '寄存订单', checked: false },
      { id: 'BS124125412074', orderType: '寄售订单', checked: true },
      { id: 'YQ124125412074', orderType: '送拍订单', checked: false },
      { id: 'UF124125412074', orderType: '寄售订单', checked: false },
      { id: 'MX124125412074', orderType: '送拍订单', checked: false },
      { id: 'OT124125412074', orderType: '送拍订单', checked: true },
      { id: 'UR124125412074', orderType: '寄售订单', checked: false },
      { id: 'KK124125412074', orderType: '送拍订单', checked: true }
    ],
    actualCount: 20, 	// 实收数量

    matchResult: 1,	// 匹配结果 1:匹对成功 2：批量送卡 3-退货入库
    orderType: 1,	// 订单类型 1-送拍订单 2-寄售订单 3-寄存订单4-VIP订单5-退货入库

    firstTime: '2023-07-10 10:10', // 初审时间
    firstReviewMiss: 5,	// 初审不通过数量
    firstReviewName: '张三', 	// 初审人
    firstReviewPass: 8, 	// 初审通过数量

    reviewTime: '2023-01-04 10:07',	// 复核时间
    reviewMiss: 6, 	// 复核不通过数量
    reviewName: '张三',	// 复核人
    reviewPass: 9,	// 复核通过数量

    enterName: '张三', // 入库人员
    enterTime: '2023-01-04 10:07', // 入库时间

    mailName: '张三', // 寄件人
    mailUID: 'JJRasdq11251a', //
    mailIphone: '13800000000', // 寄件人电话

    sendPerson: '张三',	// 送卡人
    sendCount: 20,	// 送卡数量
    sendPhone: '13800000000',	// 送卡人电话
    sendUid: 'YQasdq11251a', 	// 送卡人uid

    wmsStatus: 1,

    enterOrderType: '常规订单'
  }
  response.send({
    code: 0,
    data: result,
    message: 'success'
  })
})

// 入库-获取订单列表
app.post('/wms/outOrder/all', (request, response) => {
  const params = request.body
  const result = []
  for (let i = 0; i < (params.pageSize || 10); i++) {
    result.push({
      id: i + 1, // 主键id
      userId: 'I124474241', //	用户id	string
      userWmsId: 'S464365724234', // 私人仓货架ID
      cardId: 'KP12412415123', // 卡牌uid
      cardImg: 'https://pinia.vuejs.org/logo.svg', // 卡牌图片

      title: 'PTCG 宝可梦 PSA10 喷火龙 #POKECOLOR#', // 标题
      type: 'PTG', // 类型
      seller: 'LI李四', // 卖家
      createTime: '2023-01-04 10:07', //	创建时间	string(date-time)	string(date-time)

      trackingNo: 'SF35234124476231', // 	物流单号	string
      logisticsCompany: '顺丰快递', //	物流公司	string

      cardStatus: params.cardStatus	|| 1, // 出库状态:1-待拣货 2-待确认出仓 3-待发货 4-已发货	integer(int32)	integer(int32)
      cardsId: ['356234123', '13634121123', '23623423412'], // 合集id	string
      orderOutNo: 'HA12352341231233', //	出卡订单号-销售订单UID	string

      orderType: 3, //	订单类型 1-送拍订单 2-寄售订单 3-寄存订单4-VIP订单5-退货入库	integer(int32)	integer(int32)
      sendType: 2, //	售卖模式 1:正常拍卖 2：回寄客户	integer(int32)	integer(int32)

      pickConfirmTime: '2023-01-04 10:07', //	确认拣货时间	string(date-time)	string(date-time)
      pickConfirmUid:	'E24123513123', // 确认拣货人UID	string
      pickTime: '2023-01-04 10:07', //	拣货时间	string(date-time)	string(date-time)
      pickUid: 'U14672413123', //	拣货人UID	string
      picker: '张三', //	拣货人	string
      confirmPicker: '张三', //	确认拣货人	string

      sendCount: 20, //	寄送数量	integer(int32)	integer(int32)
      sendName: '张三', //	发货人	string
      sendPhone: '1380000000000', //	发货人电话	string
      sendTime: '2023-01-04 10:07' //	发货时间	string(date-time)	string(date-time)

    })
  }
  response.send({
    code: 0,
    data: result,
    message: 'success'
  })
})

// 卡牌模块
app.post('/wms/card/all', (request, response) => {
  const params = request.body
  const result = []
  for (let i = 0; i < (params.pageSize || 3); i++) {
    result.push({
      addCount: 20, //	新增数量		false	integer(int32)
      backImageUrl: 'https://pinia.vuejs.org/logo.svg', //	背面图片		false	string
      // backImageUrl: '', //	背面图片		false	string
      frontImageUrl: 'https://pinia.vuejs.org/logo.svg', //	正面图片		false	string
      // frontImageUrl: '', //	正面图片		false	string
      cardImg: 'https://pinia.vuejs.org/logo.svg', // 卡牌图片
      cardId: 'KP12412415123', //	卡牌uid		false	string
      cardStatus: 1, //	卡片状态1-未入仓库2-已入仓库3-不予入仓库—回寄卡牌（未提交回寄物流信息）4-不予入仓库—卡牌已回寄（已提交回寄物流信息）5-已出仓库		false	integer(int32)
      cardName: 'PTCG 宝可梦 PSA10 喷火龙 #POKECOLOR#', // 卡牌名称
      firstReason: '卡牌不符', //	初审原因		false	string
      // firstReason: '', //	初审原因		false	string
      firstReview: i % 2 === 0 ? 2 : 1, //	初审状态1-通过2-不通过		false	integer(int32)
      // firstReview: '', //	初审状态1-通过2-不通过		false	integer(int32)
      id: i + 1, //	主键		false	integer(int32)
      orderNo: 'HA12352341231233', //	送卡订单号		false	string
      rating: 'PSA', //	卡牌评级类型		false	string
      // rating: '', //	卡牌评级类型		false	string
      // ratingNo: '', //	卡牌评级号码		false	string
      ratingNo: 346341231314, //	卡牌评级号码		false	string
      // score: '', //	分数		false	string
      score: 10, //	分数		false	string
      // stickerPhotoUrl: '', //	贴纸拍照		false	string
      stickerPhotoUrl: 'https://pinia.vuejs.org/logo.svg', //	贴纸拍照		false	string
      userId: 'I124474241', //	用户id		false	string
      userWmsId: 'A区S4643657234', //	私人仓货架ID
      wmsStatus: i + 1 // 入库状态
    })
  }
  response.send({
    code: 0,
    data: result,
    message: 'success'
  })
})

// 修改卡牌信息
app.post('/wms/card/updateCardInfo', (request, response) => {
  response.send({
    code: 0,
    data: null,
    message: 'success'
  })
})

// 订单卡牌查询是否点亮下一个订单
app.post('/wms/card/queryIsAllAudit', (request, response) => {
  const isLight = new Date().getTime() % 2 === 0
  response.send({
    code: 0,
    data: isLight,
    message: 'success'
  })
})


// 启动服务器
app.listen(3000, () => {
  console.log('服务器启动成功！3000')
})
